package com.piccolo.wrapper.client.component.JSNI;

import com.google.gwt.core.client.JsArray;
import com.piccolo.wrapper.client.component.Overlay.PCameraOverlay;
import com.piccolo.wrapper.client.component.Overlay.PLayerOverlay;
import com.piccolo.wrapper.client.component.Overlay.PNodeOverlay;
import com.piccolo.wrapper.client.component.Overlay.PTransformOverlay;

public class PCameraJSNI 
{
	public native PCameraOverlay create() 
	/*-{ return new $wnd.PCamera(); }-*/;
	
	public native void animateViewToTransform(PCameraOverlay self, PTransformOverlay transform, double duration)
	/*-{ self.animateViewToTransform(transform, duration); }-*/;

	public native void addLayer(PCameraOverlay self, PNodeOverlay layer) 
	/*-{ self.addLayer(layer); }-*/;
	
	public native void removeLayer(PCameraOverlay self, PNodeOverlay layer) 
	/*-{ self.removeLayer(layer); }-*/;
	
	public native JsArray<PLayerOverlay> getLayers(PNodeOverlay self) 
	/*-{ return self.layers; }-*/;
	
	public native void setViewTransform(PCameraOverlay self, PTransformOverlay transform) 
	/*-{ self.setViewTransform(transform); }-*/;

	public native JsArray<PNodeOverlay> getPickedNodes(PCameraOverlay self)
	/*-{ return self.getPickedNodes(); }-*/;

	public native int getLayerCount(PCameraOverlay self) 
	/*-{ return self.layers.length; }-*/;

}
